package day12.api;

import java.util.Scanner;

/*本类用于测试正则表达式*/
/*测试输入的身份证号,测试用户输入是否正确*/
public class TestRegex {
    public static void main(String[] args) {
        //1.提示并接收用户输入的身份证号:
        System.out.println("请输入您的身份证号:");
        String input = new Scanner(System.in).nextLine();

        //2.编辑正则表达式
        //身份证号的规律:一般都是18位,前17位都是数字,最后一位可能是数字,也有可能是X
        //String regex = "[0-9]{17}[0-9X]";
        /*单个\在java中有特殊的意义,认为这是一个转义符号
        * 所以如果你想单纯的表示这就是一个\,需要在它的前面加一个用来转义的\
        * 也就是\\*/
        String regex = "\\d{17}[0-9X]";

        //3.判断用户输入的数据是否符合正则表达式的规则(也就是说用户输入的身份证号是否正确)
        if(input.matches(regex)){
            System.out.println("恭喜您!输入正确!");
        }else {
            System.out.println("输入不正确!");
        }
    }
}
